Skip to content

fix(rpc): inspect first raw tx positional arg for replay protection - #382

Closed
huklaa wants to merge 1 commit into
circlefin:mainfrom
huklaa:fix-381-unprotected-extra-params
Closed

huklaa wants to merge 1 commit into
circlefin:mainfrom
huklaa:fix-381-unprotected-extra-params

Conversation

@huklaa

@huklaa huklaa commented Sep 11, 2026

Copy link
Copy Markdown

Fixes #381

Summary

Replay protection previously inspected only the parameter array shape for raw-transaction RPC methods, which allowed requests with additional positional parameters to bypass the intended raw transaction check.

This change makes the middleware consistently inspect the first positional argument as the raw transaction payload while preserving support for valid RPC requests that include additional parameters.

Changes

  • inspect the first positional parameter for replay-protected raw transaction methods
  • preserve requests containing valid additional positional parameters
  • add regression coverage for the bypass case
  • keep the change scoped to the RPC replay-protection middleware

Testing

Added focused regression tests covering the extra-parameter case and the existing expected behavior.

Scope

The fix is intentionally limited to the replay-protection issue described in #381. A final duplicate/WIP check found no competing PR addressing the same behavior.

@ZhiyuCircle

Copy link
Copy Markdown
Contributor

Thanks for the contribution. This issue was already known internally, and we’ve fixed it. The fix will be included in the next release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Raw transaction replay-protection middleware can be bypassed with extra positional params

2 participants